<!DOCTYPE html>
<!-- saved from url=(0061)https://www.processon.com/diagraming/5d8ec252e4b05a8b754209ba -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>dispatcherServlet委派模式简单分析 - ProcessOn</title>

<meta name="description" content="ProcessOn一款HTML5版的免费在线作图工具，无需下载和安装，点击即可使用；支持用户无延迟协作 和历史记录动画回放等，只需一个浏览器即可全部完成！轻松、简单、易用！">
<meta name="renderer" content="webkit">
<script async="" src="./dispatcherServlet委派模式_files/analytics.js"></script><script type="text/javascript" id="zhuge-js" async="" src="./dispatcherServlet委派模式_files/zhuge.min.js"></script><script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/jquery.js"></script>
<script type="text/javascript" src="./dispatcherServlet委派模式_files/util-f65266fa.js"></script>
<link rel="stylesheet" href="./dispatcherServlet委派模式_files/global-f65266fa.css" type="text/css">
<link type="text/css" rel="stylesheet" href="./dispatcherServlet委派模式_files/designer.css">
<link type="text/css" rel="stylesheet" href="./dispatcherServlet委派模式_files/ui.css">
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/schema.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/themes.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/basic.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_common.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_usecase.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_sequence.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_class.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_stateactivity.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_deployment.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/uml_component.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/er.js"></script>
<script src="./dispatcherServlet委派模式_files/qrcode-f65266fa.js" charset="UTF-8" type="text/javascript"></script>
<script type="text/javascript">
var chartId = "5d8ec252e4b05a8b754209ba";
var userId = "5cfdc3b7e4b0591fc0dad152";
var userName = "浮生醉";
var teamId = "";
var orgId = "";
var role = "owner";
var cateType = "uml";
var time = "1569638169475";
var dock = "";
var tutorial = false;
var locale = "zh";
var isOpenColl2Owner = "true";
var isOpenShare2Owner = "true";
var isOpenPublish2Owner = "true";
var isOpenClone2Owner = "true";


var showToolbar = true;

var cstatus = "private";
var dateFormat = "yyyy-MM-dd hh:mm";
var showCommentIco = true;

var localRuntime = false;
var chartVersion = 16;
var isNewTextV = (new Date("2019-09-28 10:15:46") > new Date("2019-01-01"));
//判断safari浏览器
var issafariBrowser = /Safari/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent);
if(issafariBrowser){
var createTime = "2019-09-28 10:15:46";
createTime = createTime.replace(/\-/g, "/");
isNewTextV = (new Date(createTime) > new Date("2019/01/01"));
}
$(function(){
$("#publish_category").val("");
if("" != ""){
$("#publish_language").val("");
}
$("#publish_tags").val("");
$("#public_edit").attr("checked", false);
});
</script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/collaboration.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/designer.core.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/export.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/designer.methods.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/designer.events.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/designer.ui.js"></script>
<style type="text/css">@keyframes animate_dots{0%{opacity:1}to{opacity:0}}@-webkit-keyframes animate_dots{0%{opacity:1}to{opacity:0}}.dot0,.dot1{animation:animate_dots .9s infinite;-moz-animation:animate_dots .9s infinite;-webkit-animation:animate_dots .9s infinite;-o-animation:animate_dots .9s infinite}.dot1{animation-delay:.2s;-webkit-animation-delay:.2s}.dot2{animation:animate_dots .9s infinite;-moz-animation:animate_dots .9s infinite;-webkit-animation:animate_dots .9s infinite;-o-animation:animate_dots .9s infinite;animation-delay:.4s;-webkit-animation-delay:.4s}.dots_item{display:inline-block;margin-right:5px;width:10px;height:10px;border-radius:50%;background:#4886ff}.verify-icon{position:absolute;width:100%;margin-top:70px;text-align:center}.t-mask{width:100%;height:100%;position:fixed;_position:absolute;left:0;top:0;background:#000;opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50);z-index:2000000000}</style><script type="text/javascript" async="" src="./dispatcherServlet委派模式_files/tcaptcha-frame.ae3fc568.js"></script></head>
<body>
<canvas id="support_canvas" style="display: none;"></canvas>
<script type="text/javascript">
if(!document.getElementById("support_canvas").getContext){
window.location.href = "/diagraming/not_support";
}
</script>

<div id="designer_header">
<div class="titlebar">
<a class="btn_back" href="https://www.processon.com/diagraming/back?id=5d8ec252e4b05a8b754209ba" original-title="返回"><span class="ico ico_goback"></span></a>
<div class="row row1">
<div id="title_container">
<span class="diagram_title" style="display: inline-block;">dispatcherServlet委派模式简单分析</span>
</div>
</div>
<div class="row row2 menubar">
<ul id="menu_bar">
<li id="menu_bar_file" menu="bar_list_file" class="">文件</li>
<li id="menu_bar_edit" menu="bar_list_edit" class="">编辑</li>
<li id="menu_bar_view" menu="bar_list_view">视图</li>
<li id="menu_bar_insert" menu="bar_list_insert">插入</li>
<li id="menu_bar_page" menu="bar_list_page" class="">页面</li>
<li id="menu_bar_arrange" menu="bar_list_arrange" class="">排列</li>
<li id="menu_bar_help" menu="bar_list_help" class="">帮助</li>
</ul>
<div id="saving_tip">所有更改已保存</div>
</div>
<div class="share_container">
<div class="header_right_btn">
<div class="toolbar_button active" style="padding: 0px 10px;" onclick="UI.showDownload()">
下载
</div>
<div id="colla_btn" class="toolbar_button active" style="padding: 0px 10px;" onclick="UI.showAddColla()">
协作
</div>
<div id="share_btn" class="toolbar_button drop_button active" onmousedown="UI.showShareMenu(event)">
分享
</div>
<div id="publish_btn" class="toolbar_button active" style="padding: 0px 10px;" onclick="UI.showPublish()">
发布
</div>
</div>
<div class="user" onmousedown="UI.showUserMenu(event)">
<img src="./dispatcherServlet委派模式_files/5cfdc3b7e4b0591fc0dad152.png">
<div class="ico ico_accordion"></div>
</div>
</div>
</div>
<div class="toolbar">
<div id="bar_theme" class="toolbar_button" original-title="切换风格"><div class="ico theme"></div></div>
<div class="toolbar_devider"></div>
<div id="bar_undo" class="toolbar_button" original-title="撤销 (Ctrl+Z)"><div class="ico undo"></div></div>
<div id="bar_redo" class="toolbar_button" original-title="恢复 (Ctrl+Y)"><div class="ico redo"></div></div>
<div id="bar_brush" class="toolbar_button disabled" original-title="格式刷 (Ctrl+Shift+B)"><div class="ico brush"></div></div>
<div class="toolbar_devider"></div>
<div id="bar_font_family" class="toolbar_button disabled" style="width: 80px;" original-title="字体"><div class="text_content">微软雅黑</div><div class="ico ico_dropdown"></div></div>
<div class="toolbar_small_devider"></div>
<div id="bar_font_size" class="spinner disabled" style="width: 50px;" min="12" max="100" old="16px" original-title="字号"><div class="spinner_input"><input disabled="disabled"></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div class="toolbar_small_devider"></div>
<div id="bar_font_bold" class="toolbar_button disabled" original-title="粗体 (Ctrl+B)"><div class="ico bold"></div></div>
<div id="bar_font_italic" class="toolbar_button disabled" original-title="斜体 (Ctrl+I)"><div class="ico italic"></div></div>
<div id="bar_font_underline" class="toolbar_button disabled" original-title="下划线 (Ctrl+U)"><div class="ico underline"></div></div>
<div id="bar_font_color" class="toolbar_button drop_button disabled" original-title="文本颜色">
<div class="ico fontcolor"></div>
<div class="btn_color" style="background-color: rgb(50,50,50)"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="bar_font_align" class="toolbar_button drop_button disabled" original-title="对齐">
<div class="ico alignleft"></div>
<div class="ico ico_dropdown"></div>
</div>
<div class="toolbar_devider"></div>
<div id="bar_fill" class="toolbar_button drop_button disabled" original-title="填充样式">
<div class="ico fillcolor"></div>
<div class="btn_color" style="background-color: rgb(255,255,255)"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="bar_line_color" class="toolbar_button drop_button disabled" original-title="线条颜色">
<div class="ico linecolor"></div>
<div class="btn_color" style="background-color: rgb(50,50,50)"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="bar_line_width" class="toolbar_button drop_button disabled" original-title="线宽">
<div class="ico linewidth"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="bar_line_style" class="toolbar_button drop_button disabled" original-title="线条样式">
<div class="ico linedash"></div>
<div class="ico ico_dropdown"></div>
</div>
<div class="toolbar_devider"></div>
<div id="bar_linkertype" class="toolbar_button drop_button disabled" original-title="连线类型">
<div class="ico linkertype_broken"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="bar_beginarrow" class="toolbar_button drop_button disabled" original-title="起点">
<div class="ico ico_arrow larrow_none"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="bar_endarrow" title="终点" class="toolbar_button drop_button disabled">
<div class="ico ico_arrow rarrow_solidarrow"></div>
<div class="ico ico_dropdown"></div>
</div>
<div class="toolbar_devider"></div>
<div id="bar_front" title="置于顶层 (Ctrl+] )" class="toolbar_button disabled"><div class="ico ico_front"></div></div>
<div id="bar_back" title="置于底层 (Ctrl+[ )" class="toolbar_button disabled"><div class="ico ico_back"></div></div>
<div class="toolbar_devider"></div>
<div id="bar_lock" title="锁定 (Ctrl+L)" class="toolbar_button disabled"><div class="ico ico_lock"></div></div>
<div id="bar_unlock" title="解锁 (Ctrl+Shift+L)" class="toolbar_button disabled"><div class="ico ico_unlock"></div></div>
<div class="toolbar_small_devider"></div>
<div id="bar_link" title="插入链接" class="toolbar_button disabled"><div class="ico ico_link"></div></div>
<div class="toolbar_right">
<div id="bar_collapse" class="toolbar_button"><div class="ico collapse"></div></div>
</div>
<a id="bar_return" class="toolbar_button" href="https://www.processon.com/diagraming/back?id=5d8ec252e4b05a8b754209ba" title="返回"><span class="ico ico_goback"></span></a>
</div>
</div>
<div id="designer">
<div id="shape_panel" class="layout" style="height: 740px;"><div class="panel_container panel_collapsed"><h3 class="panel_title search"><input id="shape_search" placeholder="搜索" title_pos="right" original-title="搜索ProcessOn图形和网络图标，搜索网络图标建议使用英文单词，搜索更精准。"></h3><div id="panel_search" class="content"></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>基础图形</h3><div id="panel_basic" class="content"><div class="panel_box" shapename="text" style="left: 0px; top: 0px;"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="note"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="round"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="rectangle"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="roundRectangle"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="triangle"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="diamond"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="polygon"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="hexagon"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="octagon"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="pentagon"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sector"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sector2"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="cross"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="cloud"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="comment"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="braces"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="parentheses"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="rightBrace"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="leftBrace"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="apqc"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="teardrop"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="singleLeftArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="singleRightArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="doubleHorizontalArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="singleUpArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="singleDownArrow" style="left: 0px; top: 0px;"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="doubleVerticalArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="backArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="rightBackArrow"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="corner"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="basic_container"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 通用</h3><div id="panel_uml_common" class="content"><div class="panel_box" shapename="package"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="combinedFragment"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="umlNote"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="umlText"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 用例图</h3><div id="panel_uml_usecase" class="content"><div class="panel_box" shapename="actor"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="useCase"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="ovalContainer"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="rectangleContainer"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 时序图</h3><div id="panel_uml_sequence" class="content"><div class="panel_box" shapename="sequenceObject" style="left: 0px; top: 0px;"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceEntity"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceControl"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceBoundary"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceTimerSignal"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceConstraint"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceActivation"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceLifeLine"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sequenceDeletion"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 类图</h3><div id="panel_uml_class" class="content"><div class="panel_box" shapename="simpleClass" style="left: 0px; top: 0px;"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="interface" style="left: 0px; top: 0px;"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="cls"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="activeClass"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="multiplictyClass"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="simpleInterface"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="constraint"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="port"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 状态图/活动图</h3><div id="panel_uml_stateactivity" class="content"><div class="panel_box" shapename="umlObject"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="umlState"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="umlStart"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="umlEnd"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="flowFinal"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="simpleHistory"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="detialHistory"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="sendSignal"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="receiveSignal"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="branchMerge"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="Synchronization"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="stateRectangleContainer"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="swimlane"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="horizontalSwimlane"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 部署图</h3><div id="panel_uml_deployment" class="content"><div class="panel_box" shapename="devComponentNonInstance"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="devComponent"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="devNodeNonInstance"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="devNodeInstance"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="uml_deploymentObject"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="uml_deploymentConstraint"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>UML 组件图</h3><div id="panel_uml_component" class="content"><div class="panel_box" shapename="component"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="componentNodeNonInstance"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="componentStart"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div><div class="panel_container"><h3 class="panel_title"><div class="ico ico_accordion"></div>实体关系图</h3><div id="panel_er" class="content"><div class="panel_box" shapename="entity"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="derivedAttribute"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="keyAttribute"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="multivaluedAttribute"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="weakEntity"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="relationship"><canvas class="panel_item" width="50" height="50"></canvas></div><div class="panel_box" shapename="weakRelationship"><canvas class="panel_item" width="50" height="50"></canvas></div></div></div></div>
<div id="designer_viewport">
<div id="designer_layout" class="layout" style="height: 740px;">
<div id="canvas_container" style="width: 1050px; height: 1000px; padding: 1000px; cursor: default;">
<div id="designer_canvas" style="background-color: rgb(242, 242, 242);">
<canvas id="designer_grids" width="1050" height="1000"></canvas>
<ul id="designer_contextmenu" class="menu list options_menu" style="display: none; z-index: 13; left: 253px; top: 305px;">
<li ac="cut" style="display: list-item;"><div class="ico cut"></div>剪切<div class="extend">Ctrl+X</div></li>
<li ac="copy" style="display: list-item;"><div class="ico copy"></div>复制<div class="extend">Ctrl+C</div></li>
<li ac="paste" style="display: list-item;"><div class="ico paste"></div>粘贴<div class="extend">Ctrl+V</div></li>
<li ac="duplicate" style="display: list-item;">复用<div class="extend">Ctrl+D</div></li>
<li ac="defaultStyle" style="display: list-item;">设置默认样式<div class="extend tip_text" click-btn="clearStyle" style="display: none;">清除</div></li>
<li ac="replace" style="display: list-item;"><div class="ico theme"></div>替换图形</li>
<li class="devider devi_clip" style="display: list-item;"></li>
<li ac="front" style="display: list-item;"><div class="ico ico_front"></div>置于顶层<div class="extend">Ctrl+]</div></li>
<li ac="back" style="display: list-item;"><div class="ico ico_back"></div>置于底层<div class="extend">Ctrl+[</div></li>
<li ac="lock" style="display: list-item;"><div class="ico ico_lock"></div>锁定<div class="extend">Ctrl+L</div></li>
<li ac="unlock" style="display: none;"><div class="ico ico_unlock"></div>解锁<div class="extend">Ctrl+Shift+L</div></li>
<li ac="group" style="display: none;">组合<div class="extend">Ctrl+G</div></li>
<li ac="ungroup" style="display: none;">取消组合<div class="extend">Ctrl+Shift+G</div></li>
<li id="ctxmenu_align" style="display: none;">
图形对齐<div class="extend ex_arrow">►</div>
<ul class="menu list extend_menu">
<li ac="align_shape" al="left">左对齐</li>
<li ac="align_shape" al="center">居中对齐</li>
<li ac="align_shape" al="right">右对齐</li>
<li class="devider"></li>
<li ac="align_shape" al="top">顶端对齐</li>
<li ac="align_shape" al="middle">垂直居中对齐</li>
<li ac="align_shape" al="bottom">底端对齐</li>
</ul>
</li>
<li class="devider devi_shape" style="display: list-item;"></li>
<li ac="changelink" style="display: none;"><div class="ico ico_link"></div>修改链接</li>
<li ac="edit" style="display: list-item;"><div class="ico edittext"></div>编辑文本<div class="extend">空格</div></li>
<li ac="delete" style="display: list-item;"><div class="ico remove"></div>删除<div class="extend">Delete/Backspace</div></li>
<li class="devider devi_del" style="display: list-item;"></li>
<li ac="selectall" style="display: list-item;">全选<div class="extend">Ctrl+A</div></li>
<li class="devider devi_selectall" style="display: list-item;"></li>
<li ac="drawline" style="display: list-item;"><div class="ico linkertype_normal"></div>创建连线<div class="extend">L</div></li>
</ul>
<div id="16d75a7a607da2" class="shape_box" style="left: 74px; top: 152px; width: 299px; height: 99px; z-index: 0;"><canvas class="shape_canvas" width="299" height="99"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75a7a607da2" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: bold; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 259px; height: 20px; left: 20px; top: 15px; transform: rotate(0deg) scale(1);">DispatcherServlet</div><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75a7a607da2" ind="1" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: left; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 259px; height: 40px; left: 20px; top: 44.5px; transform: rotate(0deg) scale(1);">doDispatcher(request,response)<br><br></div></div><div id="16d75a961de8b6" class="shape_box" style="left: 134px; top: 358px; width: 250px; height: 80px; z-index: 1;"><canvas class="shape_canvas" width="250" height="80"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75a961de8b6" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: bold; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 210px; height: 20px; left: 20px; top: 15px; transform: rotate(0deg) scale(1);">HandlerExecutionChain</div><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75a961de8b6" ind="1" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: left; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 210px; height: 20px; left: 20px; top: 45px; transform: rotate(0deg) scale(1);">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; getHandler()<div></div></div></div><div id="shape_controls" style="left: 84px; top: 162px; width: 279px; height: 79px; z-index: 10; display: none;"><canvas id="controls_bounding" width="299" height="99"></canvas><div class="shape_controller n w" index="0" resizedir="tl" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: block; left: -4px; top: -4px;"></div><div class="shape_controller n e" index="1" resizedir="tr" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: block; left: 275px; top: -4px;"></div><div class="shape_controller s e" index="2" resizedir="br" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: block; left: 275px; top: 75px;"></div><div class="shape_controller s w" index="3" resizedir="bl" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: block; left: -4px; top: 75px;"></div><div class="shape_controller w" resizedir="l" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: none;"></div><div class="shape_controller n" resizedir="t" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: none;"></div><div class="shape_controller e" resizedir="r" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: none;"></div><div class="shape_controller s" resizedir="b" style="border-color: rgb(136, 51, 51); width: 6px; height: 6px; z-index: 10; display: none;"></div><canvas class="shape_rotater" width="41px" height="40px" style="top: -40px; left: 119px;"></canvas><div class="group_icon change_shape_icon" style="display: none;"></div></div><div contenteditable="true" spellcheck="false" id="shape_text_ruler" style="width: 160px; z-index: 12; line-height: 16px; font-size: 13px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; word-wrap: break-word;">通过handlerAdapter适配器处理请求，返回ModelAndView,最后进行封装返回给客户段端</div><div id="designer_op_tip" style="top: 246px; left: 174.5px; z-index: 10; display: none;">X: 84&nbsp;&nbsp;Y: 162</div><div id="designer_op_snapline_v" style="height: 3003px; top: -1000px; left: 374px; z-index: 11; display: none;"></div><canvas class="link_point_canvas" width="32" height="32" style="left: 239px; top: 247px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 239px; top: 247px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 239px; top: 247px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 231px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 230px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 229px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 228px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 228px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 229px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 230px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 231px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 2; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 2; display: none;"></canvas><div id="shape_dashboard_uml_class" class="shape_dashboard menu" style="left: 400px; top: 217px; z-index: 11; display: none;"><div class="dashboard_box" shapename="simpleClass"><canvas title_pos="right" class="panel_item" width="50" height="50" original-title="简单类"></canvas></div><div class="dashboard_box" shapename="interface"><canvas title="接口和类" title_pos="right" class="panel_item" width="50" height="50"></canvas></div><div class="dashboard_box" shapename="cls"><canvas title="类" title_pos="right" class="panel_item" width="50" height="50"></canvas></div><div class="dashboard_box" shapename="activeClass"><canvas title="活动类" title_pos="right" class="panel_item" width="50" height="50"></canvas></div><div class="dashboard_box" shapename="multiplictyClass"><canvas title="多例类" title_pos="right" class="panel_item" width="50" height="50"></canvas></div><div class="dashboard_box" shapename="simpleInterface"><canvas title="接口" title_pos="right" class="panel_item" width="50" height="50"></canvas></div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 231px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 230px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 228px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 225px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 224px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 223px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 216px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 218px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 220px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 222px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 223px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 225px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 226px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 228px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 229px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 230px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 231px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 235px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 231px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 230px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 228px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 226px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 225px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 225px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 226px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 229px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 230px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 231px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 232px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 233px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 234px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 207px; top: 247px; z-index: 3; display: none;"></canvas><div id="16d75bbe965dbb" class="shape_box linker_box" style="z-index: 9; left: 213px; top: 232px; width: 20.5px; height: 142.4px;"><canvas class="shape_canvas" width="20.5" height="142.39999999999998"></canvas><div class="text_canvas linker_text" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; transform: scale(1); display: none;"></div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 207px; top: 247px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 207px; top: 247px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 197px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 196px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 195px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 193px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 192px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 190px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 190px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 189px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 188px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 188px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 189px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 190px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 191px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 192px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 193px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 194px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 195px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 196px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 197px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 197px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 198px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 199px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 200px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 200px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 200px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 201px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 202px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 203px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 204px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 205px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 206px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 207px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 208px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 208px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 207px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 206px; top: 352px; z-index: 3; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 207px; top: 352px; z-index: 3; display: none;"></canvas><div id="16d75bcecb8774" class="shape_box" style="left: 254px; top: 263px; width: 230px; height: 78px; z-index: 2;"><canvas class="shape_canvas" width="230" height="78"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75bcecb8774" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 210px; height: 80px; left: 10px; top: -1px; transform: rotate(0deg) scale(1);">getHandler(request)<div>根据HandlerMapping以及request找到对应的HandlerExecutionChain</div></div></div><div id="16d75bd7f5dea5" class="shape_box" style="left: 123px; top: 515px; width: 336px; height: 112px; z-index: 3;"><canvas class="shape_canvas" width="336" height="112"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75bd7f5dea5" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: bold; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 296px; height: 20px; left: 20px; top: 15px; transform: rotate(0deg) scale(1);">HandlerAdapter</div><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75bd7f5dea5" ind="1" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: left; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 296px; height: 40px; left: 20px; top: 51px; transform: rotate(0deg) scale(1);">handle(processedRequest, response, mappedHandler.getHandler());</div></div><div class="pop-editor" style="left: 194px; top: 432px; display: none;"><div data-key="bold"><div class="ico bold"></div></div><div data-key="italic"><div class="ico italic"></div></div><div data-key="underline"><div class="ico underline"></div></div><div data-key="color"><div class="ico fontcolor"></div></div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 412px; z-index: 5; display: none;"></canvas><div id="16d75bed58f159" class="shape_box linker_box" style="z-index: 4; left: 218px; top: 421px; width: 20px; height: 110.4px;"><canvas class="shape_canvas" width="20" height="110.39999999999998"></canvas><div class="text_canvas linker_text" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; transform: scale(1); display: none;"></div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 412px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 412px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 412px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 217px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 217px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 216px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 216px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 216px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 215px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 481px; z-index: 5; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 481px; z-index: 5; display: none;"></canvas><div id="16d75bf0a15354" class="shape_box" style="left: 233px; top: 426px; width: 226px; height: 81px; z-index: 5;"><canvas class="shape_canvas" width="226" height="81"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75bf0a15354" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 206px; height: 60px; left: 10px; top: 10.5px; transform: rotate(0deg) scale(1);">getHandlerAdapter(handler)通过Handler获取对应的handler适配器</div></div><div id="designer_op_snapline_h" style="width: 3050px; left: -1000px; top: 700px; z-index: 11; display: none;"></div><div id="16d75c1464d09a" class="shape_box" style="left: 202px; top: 729px; width: 120px; height: 90px; z-index: 6;"><canvas class="shape_canvas" width="120" height="90"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75c1464d09a" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 80px; height: 40px; left: 20px; top: 25px; transform: rotate(0deg) scale(1);">ModelAndView</div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 587px; z-index: 8; display: none;"></canvas><div id="16d75c1932ea2c" class="shape_box linker_box" style="z-index: 7; left: 252px; top: 608px; width: 20.1478px; height: 137.4px;"><canvas class="shape_canvas" width="20.14782608695657" height="137.39999999999998"></canvas><div class="text_canvas linker_text" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; transform: scale(1); display: none;"></div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 587px; z-index: 8; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 587px; z-index: 8; display: none;"></canvas><div id="16d75c19d45de4" class="shape_box" style="left: 287px; top: 650px; width: 180px; height: 60px; z-index: 8;"><canvas class="shape_canvas" width="180" height="60"></canvas><div contenteditable="true" spellcheck="false" class="text_canvas" forshape="16d75c19d45de4" ind="0" readonly="readonly" style="line-height: 20px; font-size: 16px; font-family: 微软雅黑; font-weight: normal; font-style: normal; text-align: center; color: rgb(50, 50, 50); text-decoration: none; opacity: 1; word-wrap: break-word; width: 160px; height: 100px; left: 10px; top: -20px; transform: rotate(0deg) scale(1);">通过handlerAdapter适配器处理请求，返回ModelAndView,最后进行封装返回给客户段端</div></div><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 489px; z-index: 9; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227.5px; top: 247px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227.5px; top: 247px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227.5px; top: 247px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227.5px; top: 247px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227.5px; top: 247px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 227.5px; top: 247px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 354px; top: 201px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 208px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 208px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 208px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 208px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 209px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 101px; top: 213px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 101.532px; top: 231.887px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 101.571px; top: 233.936px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 102.812px; top: 233.239px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 144px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 146px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 148px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 148px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 150px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 153px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 155px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 158px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 159px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 161px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 162px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 167px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 170px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 173px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 178px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 181px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 185px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 240.5px; top: 234px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 253px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 253px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 250px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 249px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 248px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 247px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 246px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 244px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 242px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 241px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 225px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 224px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 223px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 223px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 223px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 222px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 221px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 221px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 220px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 219px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 218px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 217px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 216px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 215px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 211px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 215px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 214px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 213px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 211px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 210px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 211px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 212px; top: 509px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 253px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 254px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 253px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 253px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 253px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 252px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 251px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas><canvas class="link_point_canvas" width="32" height="32" style="left: 243px; top: 722px; z-index: 10; display: none;"></canvas></div>
</div>
<div id="shape_img_container"></div>
<div id="layout_block"></div>
</div>
<div id="shape_thumb" class="menu" current="text" style="display: none; top: 37.5px;"><canvas width="180" height="60"></canvas><div>文本</div></div>
<div id="dock" style="right: 9px;">
<div class="dock_header"></div>
<div class="dock_buttons">
<div id="dock_btn_navigator" title="导航" disabletitle="true" class="toolbar_button selected" onclick="Dock.showView(&#39;navigator&#39;, true)"><div class="ico ico_dock_nav"></div></div>
<div id="dock_btn_graphic" title="图形" disabletitle="true" class="toolbar_button" onclick="Dock.showView(&#39;graphic&#39;, true)"><div class="ico ico_dock_styles"></div></div>
<div id="dock_btn_metric" title="度量" disabletitle="true" class="toolbar_button" onclick="Dock.showView(&#39;metric&#39;, true)"><div class="ico ico_dock_metric"></div></div>
<div id="dock_btn_attribute" title="数据属性" disabletitle="true" class="toolbar_button" onclick="Dock.showView(&#39;attribute&#39;, true)"><div class="ico ico_dock_attribute"></div></div>
<div id="dock_btn_page" title="页面设置" disabletitle="true" class="toolbar_button" onclick="Dock.showView(&#39;page&#39;, true)"><div class="ico ico_dock_page"></div></div>
<div id="dock_btn_history" title="历史版本" disabletitle="true" class="toolbar_button" onclick="Dock.showView(&#39;history&#39;, true)"><div class="ico ico_history"></div></div>
<div id="dock_btn_comment" title="评论" disabletitle="true" class="toolbar_button" onclick="Dock.showView(&#39;comment&#39;, true)"><div class="ico ico_comment"></div></div>
</div>
</div>
<div id="navigation_view" class="dock_view dock_view_navigator" style="right: 45px; display: block;">
<div class="dock_view_header">
导航
<div class="ico ico_dock_collapse"></div>
</div>
<div class="navigation_bounding">
<div class="navigation_view_container">
<canvas id="navigation_canvas" width="120px" height="160px"></canvas>
<div id="navigation_eye" style="left: -1px; top: 21.4925px; width: 120px; height: 118.046px; display: block;"></div>
</div>
</div>
<div class="dock_devider" style="margin: 0px 10px"></div>
<div class="navigation_view_bar">
缩放：
<div id="dock_zoom" class="spinner active" min="50" max="200" old="100%"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div class="toolbar_button active" onclick="Dock.enterFullScreen()" title="全屏视图 (F11)"><div class="ico ico_fullscreen"></div></div>
<div class="toolbar_button active" onclick="Dock.enterPresentation()" title="演示视图 (F10)"><div class="ico ico_presentation"></div> </div>
</div>
<div id="fullscreen_tip" class="alert error">
<div class="ico dlg_close" onclick="$(&#39;#fullscreen_tip&#39;).hide();"></div>
<div class="t"></div>
<div class="full_suggest"><span>我们推荐使用以下浏览器：</span>
<a href="http://www.google.com/chrome" target="_blank"><span class="ico chrome"></span></a>
<a href="http://www.firefox.com/" target="_blank"><span class="ico firefox"></span></a>
</div>
</div>
</div>
<div class="dock_view dock_view_graphic" style="right: 45px; display: none;">
<div class="dock_view_header">
图形
<div class="ico ico_dock_collapse"></div>
</div>
<div class="dock_content">
<div class="dock_content_title">连线</div>
<div id="dock_line_color" class="picker_btn btn_inline"><div class="picker_btn_holder"></div><div class="ico ico_colordrop"></div></div>
<div id="dock_line_style" class="toolbar_button drop_button active btn_inline" style="margin: 0px 0px 0px 10px">
<div class="ico linestyle linesolid"></div>
<div class="ico ico_dropdown"></div>
</div>
<div id="dock_line_width" class="spinner active btn_inline" style="width: 82px; margin-left: 10px;" min="0" max="10" old="0px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div style="clear: both"></div>
<div class="dock_devider"></div>
<div class="dock_content_title">填充样式</div>
<div id="dock_fill_type" class="toolbar_button active"><div class="text_content"></div><div class="ico ico_dropdown"></div></div>
<div class="fill_detail fill_detail_solid">
<div id="fill_solid_btn" class="picker_btn"><div class="picker_btn_holder"></div><div class="ico ico_colordrop"></div></div>
</div>
<div class="fill_detail fill_detail_gradient">
<div id="fill_gradient_begin" c="255,255,255" class="picker_btn btn_inline"><div class="picker_btn_holder"></div><div class="ico ico_colordrop"></div></div>
<div id="gradient_swap" class="toolbar_button btn_normal btn_inline">
<div class="ico gradient_swap"></div>
</div>
<div id="fill_gradient_end" c="255,255,255" class="picker_btn btn_inline"><div class="picker_btn_holder"></div><div class="ico ico_colordrop"></div></div>
<div id="gradient_type" class="toolbar_button active btn_normal btn_inline" style="width: 100px;margin: 0px 0px 0px 10px;">
<div class="text_content"></div><div class="ico ico_dropdown"></div>
</div>
<div style="clear: both"></div>
<div id="gradient_type_linear" class="gradient_details">
角度：
<div id="gradient_angle" class="spinner active" style="width: 100px; display: inline-block;" min="0" max="360" old="0°"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
</div>
<div id="gradient_type_radial" class="gradient_details">
半径：
<div id="gradient_radius" class="spinner active" style="width: 100px; display: inline-block;" min="0" max="100" old="0%"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
</div>
<div style="clear: both"></div>
</div>
<div class="fill_detail fill_detail_image">
<div id="fill_change_img" class="toolbar_button active" style="width: 95px;">更改图片</div>
<div style="height: 10px;"></div>
显示方式：
<div id="fill_img_display" class="toolbar_button active" style="width: 100px; display: inline-block;">
<div class="text_content"></div><div class="ico ico_dropdown"></div>
</div>
</div>
<div class="dock_devider"></div>
<div class="dock_content_title">透明度</div>
<div id="spinner_opacity" class="spinner active" style="width: 90px;" min="0" max="100" old="0%"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
</div>
</div>
<div class="dock_view dock_view_metric" style="right: 45px; display: none;">
<div class="dock_view_header">
度量
<div class="ico ico_dock_collapse"></div>
</div>
<div class="dock_content">
<div class="dock_content_title">位置和大小</div>
<div class="dock_label">X:</div>
<div id="dock_metric_x" class="spinner active btn_inline" style="width: 65px;" min="-800" max="20000" old="0px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div class="dock_label">宽:</div>
<div id="dock_metric_w" class="spinner active btn_inline" style="width: 65px;" min="20" max="20000" old="20px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div style="clear: both; height: 10px;"></div>
<div class="dock_label">Y:</div>
<div id="dock_metric_y" class="spinner active btn_inline" style="width: 65px;" min="-800" max="20000" old="0px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div class="dock_label">高:</div>
<div id="dock_metric_h" class="spinner active btn_inline" style="width: 65px;" min="20" max="20000" old="20px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
<div style="clear: both"></div>
<div class="dock_devider"></div>
<div class="dock_content_title">旋转方向</div>
<div id="dock_metric_angle" class="spinner active" style="width: 95px; display: inline-block;" min="0" max="360" old="0°"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div>
</div>
</div>
<div class="dock_view dock_view_page" style="right: 45px; display: none;">
<div class="dock_view_header">
页面设置
<div class="ico ico_dock_collapse"></div>
</div>
<div class="dock_content">
<div class="dock_content_title">页面</div>
<div class="dock_label" style="width: 80px;">页面大小:</div>
<div id="dock_page_size" class="toolbar_button active btn_inline" style="width: 110px;display: inline-block;"><div class="text_content"></div><div class="ico ico_dropdown"></div></div>
<div style="height: 10px; clear: both"></div>
<div class="dock_label" style="width: 80px;">内边距:</div>
<div id="dock_page_padding" class="toolbar_button active btn_inline" style="width: 110px;display: inline-block;"><div class="text_content"></div><div class="ico ico_dropdown"></div></div>
<div style="height: 10px; clear: both"></div>
<div class="dock_label" style="width: 80px;">背景颜色:</div>
<div id="dock_page_color" class="picker_btn btn_inline"><div class="picker_btn_holder"></div><div class="ico ico_colordrop"></div></div>
<div style="height: 10px; clear: both"></div>
<div class="dock_label" style="width: 80px;">页面方向:</div>
<div class="dock_page_ori_list">
<input type="radio" name="dock_page_ori" value="portrait">竖向<br>
<input type="radio" name="dock_page_ori" value="landscape">横向
</div>
<div style="clear: both"></div>
<div class="dock_devider"></div>
<div class="dock_content_title">网格</div>
<input id="dock_page_showgrid" type="checkbox"><label for="dock_page_showgrid">显示网格</label>
<div id="dock_gridsize_box" style="margin-top: 10px;">
<div class="dock_label">网格大小:</div>
<div id="dock_page_gridsize" class="toolbar_button active btn_inline" style="width: 110px;display: inline-block;"><div class="text_content"></div><div class="ico ico_dropdown"></div></div>
<div style="clear: both"></div>
</div>
</div>
</div>
<div class="dock_view dock_view_attribute" style="width: 350px; right: 45px; display: none;">
<div class="dock_view_header">
数据属性
<div class="ico ico_dock_collapse"></div>
</div>
<div class="dock_content" style="padding: 5px 0px 5px;">
<div class="attr_add">
<div id="attr_add_btn" class="toolbar_button active noover" style="width: 120px;display: inline-block;" onclick="Dock.showAttrAdd()">添加数据属性</div>
<div class="attr_add_items">
<div class="dock_label" style="width: 50px;">名字:</div>
<input id="attr_add_name" type="text" class="input_text" style="float: left; width: 260px;">
<div style="height: 5px; clear: both"></div>
<div class="dock_label" style="width: 50px;">类型:</div>
<select id="attr_add_type" class="input_select" style="float: left; width: 120px;">
<option value="string">文本</option>
<option value="link">链接</option>
<option value="number">数值</option>
<option value="date">日期</option>
<option value="boolean">布尔</option>
<option value="list" style="display:none;">列表</option>
</select>
<div style="height: 5px; clear: both"></div>
<div class="dock_label" style="width: 50px;">值:</div>
<div id="attr_add_value_arera" style="float: left;"></div>
<div style="height: 5px; clear: both"></div>
<div class="toolbar_button active" style="width: 70px;display: inline-block;" onclick="Dock.saveAttrAdd()">确定</div>
<div class="toolbar_button active" style="width: 70px;display: inline-block;" onclick="Dock.cancelAttrAdd()">取消</div>
</div>
<div class="dock_devider"></div>
</div>
<ul class="attr_list">
</ul>
</div>
</div>
<div class="dock_view dock_view_history" style="width: 280px; right: 45px; display: none;">
<div class="dock_view_header">
历史版本
<div class="ico ico_dock_collapse"></div>
</div>
<div class="dock_content" style="padding: 0px;">
<div class="history_bar">
<div class="area_history">
<div id="btn_history_add" class="toolbar_button active" style="padding: 0px 10px 0px 3px;margin-left: 7px;"><div class="ico ico_plus" style="float: left;"></div>创建历史版本</div>
<div class="switch-container" style="display: inline-block;">
<input id="switch" type="checkbox" class="switch">
<label for="switch" onclick="Dock.switchCheck();" id="switch-label"></label>
</div>
<div id="btn_history_restore" class="toolbar_button active disabled" title="恢复到此版本"><div class="ico ico_restore"></div></div>
</div>
<div id="area_history_add" class="area_history" style="margin-left: 7px;">
<textarea id="history_remark" class="input_text" placeholder="填写注释..." style="width: 236px; height: 36px; margin-bottom: 5px;"></textarea>
<div class="toolbar_button active" style="width: 70px;display: inline-block;" onclick="Dock.addHistory()">确定</div>
<div class="toolbar_button active" style="width: 70px;display: inline-block;" onclick="Dock.toggleAddHistory()">取消</div>
</div>
</div>
<div class="switch-tip">显示全部版本记录</div>
<div id="history-none-tip" style="border-top:1px solid #f8f8f8;padding:10px 18px;display: none;">
<div style="font-size:14px;">暂时没有符合的版本记录</div>
<div style="margin-top:4px;color:#666;">您可以创建历史版本，来纪录当前的作图状态，帮助以后进行恢复和查看</div>
</div>
<div id="history_container" style="min-height: 120px;"><ul id="history_versions"><li vid="5d8ec9ede4b011ca2ab219e3" def="5d8ec9ede4b011ca2ab219e2"><div class="history_remark">自动存储<span class="ico dlg_close dock_history_remove"></span></div><div class="version_name"><span>浮生醉</span><span style="margin-left: 5px;">09-28 10:48</span></div></li><li vid="5d8ec938e4b021bb664f75e6" def="5d8ec938e4b021bb664f75e5"><div class="history_remark">自动存储<span class="ico dlg_close dock_history_remove"></span></div><div class="version_name"><span>浮生醉</span><span style="margin-left: 5px;">09-28 10:45</span></div></li><li vid="5d8ec884e4b004c5abe53cd8" def="5d8ec884e4b004c5abe53cd7"><div class="history_remark">自动存储<span class="ico dlg_close dock_history_remove"></span></div><div class="version_name"><span>浮生醉</span><span style="margin-left: 5px;">09-28 10:42</span></div></li><li vid="5d8ec7d0e4b0b2348043a1a3" def="5d8ec7d0e4b0b2348043a1a2"><div class="history_remark">自动存储<span class="ico dlg_close dock_history_remove"></span></div><div class="version_name"><span>浮生醉</span><span style="margin-left: 5px;">09-28 10:39</span></div></li><li vid="5d8ec3bbe4b021bb664f70ec" def="5d8ec3bbe4b021bb664f70eb"><div class="history_remark">自动存储<span class="ico dlg_close dock_history_remove"></span></div><div class="version_name"><span>浮生醉</span><span style="margin-left: 5px;">09-28 10:21</span></div></li><li vid="5d8ec307e4b021bb664f704b" def="5d8ec307e4b021bb664f704a"><div class="history_remark">自动存储<span class="ico dlg_close dock_history_remove"></span></div><div class="version_name"><span>浮生醉</span><span style="margin-left: 5px;">09-28 10:18</span></div></li></ul></div>
</div>
</div>
<div class="dock_view dock_view_comment" style="width: 300px; right: 45px; display: none;">
<div class="dock_view_header">
评论
<div class="ico ico_dock_collapse"></div>
</div>
<div class="dock_content" style="padding: 0px;">
<div id="comment_container" style="min-height: 120px;">
</div>
<div class="comment_bar">
<div>
<textarea id="txt_sub_comment" class="input_text" placeholder="发表评论" style="width: 268px; height: 36px"></textarea>
</div>
<div class="comment_control">
<input type="checkbox" id="show_comment_ico">
<label for="show_comment_ico">显示评论图标</label>
</div>
</div>
</div>
</div>
</div>
<div id="creating_shape_container" style="left: 0px; top: 0px; width: 153px; height: 740px; display: none;"><canvas id="creating_shape_canvas" width="50" height="50" style="left: 426px; top: 342px;"></canvas></div></div>
<div id="designer_footer">
<div class="footer_content">
<div class="left_box">
<div class="designer_button" onclick="UI.showShapesManage()">更多图形</div>
</div>
<div class="content_box">
<div class="footer_left">
<div id="collaborators">
<img id="chat_user_5cfdc3b7e4b0591fc0dad152" src="./dispatcherServlet委派模式_files/5cfdc3b7e4b0591fc0dad152(1).png" title="浮生醉" title_pos="top" class="online">
</div>
<div class="toolbar_button" onclick="UI.showAddColla()"><div class="ico useradd" style="float: left;"></div>&nbsp;<b>邀请协作者</b></div>
</div>
<ul class="footer_right">
<li class="footer_chrome" style="display: list-item;"><a href="https://chrome.google.com/webstore/detail/processon-diagram-online/pnggaliohjcaboolkcpjhfondbjlehkm/reviews" target="_blank"><span class="ico chrome"></span>给我们评个分？</a></li>
<li><a href="http://weibo.com/u/2711044785" target="_blank"><span class="ico weibo"></span>关注我们</a></li>
<li><a href="https://www.processon.com/support" target="_blank">帮助中心</a></li>
<li class="footer_fb" onclick="UI.showFeedBack()">提交反馈</li>
</ul>
<script type="text/javascript">
if(navigator.userAgent.toLowerCase().match(/chrome/) != null){
$(function(){
$(".footer_chrome").show();
});
}
</script>
</div>
</div>
</div>
<div id="ui_container">
<div id="color_picker" class="menu color_picker" style="display: none;">
<div class="color_items"><div style="background-color:rgb(255,255,255);"></div><div style="background-color:rgb(229,229,229);"></div><div style="background-color:rgb(207,207,207);"></div><div style="background-color:rgb(184,184,184);"></div><div style="background-color:rgb(161,161,161);"></div><div style="background-color:rgb(138,138,138);"></div><div style="background-color:rgb(115,115,115);"></div><div style="background-color:rgb(92,92,92);"></div><div style="background-color:rgb(69,69,69);"></div><div style="background-color:rgb(50,50,50);"></div><div style="background-color:rgb(23,23,23);"></div><div style="background-color:rgb(0,0,0);"></div><div class="clear"></div></div>
<div class="color_items"><div style="background-color:rgb(255,204,204);"></div><div style="background-color:rgb(255,230,204);"></div><div style="background-color:rgb(255,255,204);"></div><div style="background-color:rgb(230,255,204);"></div><div style="background-color:rgb(204,255,204);"></div><div style="background-color:rgb(204,255,230);"></div><div style="background-color:rgb(204,255,255);"></div><div style="background-color:rgb(204,229,255);"></div><div style="background-color:rgb(204,204,255);"></div><div style="background-color:rgb(229,204,255);"></div><div style="background-color:rgb(255,204,255);"></div><div style="background-color:rgb(255,204,230);"></div><div style="background-color:rgb(255,153,153);"></div><div style="background-color:rgb(255,204,153);"></div><div style="background-color:rgb(255,255,153);"></div><div style="background-color:rgb(204,255,153);"></div><div style="background-color:rgb(153,255,153);"></div><div style="background-color:rgb(153,255,204);"></div><div style="background-color:rgb(153,255,255);"></div><div style="background-color:rgb(153,204,255);"></div><div style="background-color:rgb(153,153,255);"></div><div style="background-color:rgb(204,153,255);"></div><div style="background-color:rgb(255,153,255);"></div><div style="background-color:rgb(255,153,204);"></div><div style="background-color:rgb(255,102,102);"></div><div style="background-color:rgb(255,179,102);"></div><div style="background-color:rgb(255,255,102);"></div><div style="background-color:rgb(179,255,102);"></div><div style="background-color:rgb(102,255,102);"></div><div style="background-color:rgb(102,255,179);"></div><div style="background-color:rgb(102,255,255);"></div><div style="background-color:rgb(102,178,255);"></div><div style="background-color:rgb(102,102,255);"></div><div style="background-color:rgb(178,102,255);"></div><div style="background-color:rgb(255,102,255);"></div><div style="background-color:rgb(255,102,179);"></div><div style="background-color:rgb(255,51,51);"></div><div style="background-color:rgb(255,153,51);"></div><div style="background-color:rgb(255,255,51);"></div><div style="background-color:rgb(153,255,51);"></div><div style="background-color:rgb(51,255,51);"></div><div style="background-color:rgb(51,255,153);"></div><div style="background-color:rgb(51,255,255);"></div><div style="background-color:rgb(51,153,255);"></div><div style="background-color:rgb(51,51,255);"></div><div style="background-color:rgb(153,51,255);"></div><div style="background-color:rgb(255,51,255);"></div><div style="background-color:rgb(255,51,153);"></div><div style="background-color:rgb(255,0,0);"></div><div style="background-color:rgb(255,128,0);"></div><div style="background-color:rgb(255,255,0);"></div><div style="background-color:rgb(128,255,0);"></div><div style="background-color:rgb(0,255,0);"></div><div style="background-color:rgb(0,255,128);"></div><div style="background-color:rgb(0,255,255);"></div><div style="background-color:rgb(0,127,255);"></div><div style="background-color:rgb(0,0,255);"></div><div style="background-color:rgb(127,0,255);"></div><div style="background-color:rgb(255,0,255);"></div><div style="background-color:rgb(255,0,128);"></div><div style="background-color:rgb(204,0,0);"></div><div style="background-color:rgb(204,102,0);"></div><div style="background-color:rgb(204,204,0);"></div><div style="background-color:rgb(102,204,0);"></div><div style="background-color:rgb(0,204,0);"></div><div style="background-color:rgb(0,204,102);"></div><div style="background-color:rgb(0,204,204);"></div><div style="background-color:rgb(0,102,204);"></div><div style="background-color:rgb(0,0,204);"></div><div style="background-color:rgb(102,0,204);"></div><div style="background-color:rgb(204,0,204);"></div><div style="background-color:rgb(204,0,102);"></div><div style="background-color:rgb(153,0,0);"></div><div style="background-color:rgb(153,76,0);"></div><div style="background-color:rgb(153,153,0);"></div><div style="background-color:rgb(77,153,0);"></div><div style="background-color:rgb(0,153,0);"></div><div style="background-color:rgb(0,153,77);"></div><div style="background-color:rgb(0,153,153);"></div><div style="background-color:rgb(0,76,153);"></div><div style="background-color:rgb(0,0,153);"></div><div style="background-color:rgb(76,0,153);"></div><div style="background-color:rgb(153,0,153);"></div><div style="background-color:rgb(153,0,77);"></div><div style="background-color:rgb(102,0,0);"></div><div style="background-color:rgb(102,51,0);"></div><div style="background-color:rgb(102,102,0);"></div><div style="background-color:rgb(51,102,0);"></div><div style="background-color:rgb(0,102,0);"></div><div style="background-color:rgb(0,102,51);"></div><div style="background-color:rgb(0,102,102);"></div><div style="background-color:rgb(0,51,102);"></div><div style="background-color:rgb(0,0,102);"></div><div style="background-color:rgb(51,0,102);"></div><div style="background-color:rgb(102,0,102);"></div><div style="background-color:rgb(102,0,51);"></div><div style="background-color:rgb(51,0,0);"></div><div style="background-color:rgb(51,26,0);"></div><div style="background-color:rgb(51,51,0);"></div><div style="background-color:rgb(26,51,0);"></div><div style="background-color:rgb(0,51,0);"></div><div style="background-color:rgb(0,51,26);"></div><div style="background-color:rgb(0,51,51);"></div><div style="background-color:rgb(0,25,51);"></div><div style="background-color:rgb(0,0,51);"></div><div style="background-color:rgb(25,0,51);"></div><div style="background-color:rgb(51,0,51);"></div><div style="background-color:rgb(51,0,26);"></div><div class="clear"></div></div>
<div title="透明" class="ico transparent color_transparent"></div>
<div class="color_hex">#<input type="text"></div>
<div class="clear"></div>
</div>
<ul id="bar_list_file" class="menu list options_menu noico" style="display: none; top: 68px; left: 30px;">
<li ac="rename">重命名文件</li>
<li class="devider"></li>
<li ac="saveAs">克隆此文件</li>
<li ac="export">下载为...</li>
<li class="devider"></li>
<li ac="close">关闭</li>
</ul>
<ul id="bar_list_edit" class="menu list options_menu" style="display: none; top: 68px; left: 76px;">
<li ac="undo" class=""><div class="ico undo"></div>撤销<div class="extend">Ctrl+Z</div></li>
<li ac="redo" class=""><div class="ico redo"></div>恢复<div class="extend">Ctrl+Y</div></li>
<li class="devider"></li>
<li ac="cut" class="disabled"><div class="ico cut"></div>剪切<div class="extend">Ctrl+X</div></li>
<li ac="copy" class="disabled"><div class="ico copy"></div>复制<div class="extend">Ctrl+C</div></li>
<li ac="paste" class=""><div class="ico paste"></div>粘贴<div class="extend">Ctrl+V</div></li>
<li ac="duplicate" class="disabled">复用<div class="extend">Ctrl+D</div></li>
<li ac="brush" class="disabled"><div class="ico brush"></div>格式刷<div class="extend">Ctrl+Shift+B</div></li>
<li ac="defaultStyle" class="disabled">设置默认样式<div class="extend tip_text" click-btn="clearStyle" style="display: none;">清除</div></li>
<li class="devider"></li>
<li ac="selectall">全选<div class="extend">Ctrl+A</div></li>
<li ac="delete" class="disabled"><div class="ico remove"></div>删除<div class="extend">Delete/Backspace</div></li>
</ul>
<ul id="bar_list_view" class="menu list options_menu" style="display: none;">
<li ac="zoom" zoom="in"><div class="ico zoomin"></div>放大<div class="extend">Alt+(+)</div></li>
<li ac="zoom" zoom="out"><div class="ico zoomout"></div>缩小<div class="extend">Alt+(-)</div></li>
<li class="devider"></li>
<li ac="zoom" zoom="0.5" class="static">50%</li>
<li ac="zoom" zoom="0.75" class="static">75%</li>
<li ac="zoom" zoom="1" class="static">100%</li>
<li ac="zoom" zoom="1.5" class="static">150%</li>
<li ac="zoom" zoom="2" class="static">200%</li>
<li class="devider"></li>
<li ac="zoom" zoom="1">重置缩放</li>
</ul>
<ul id="bar_list_insert" class="menu list options_menu" style="display: none;">
<li ac="insert" in="text"><div class="ico text"></div>文本<div class="extend">T</div></li>
<li ac="insert" in="image"><div class="ico ico_img"></div>图片<div class="extend">I</div></li>
<li ac="insert" in="line"><div class="ico linkertype_normal"></div>连线<div class="extend">L</div></li>
</ul>
<ul id="bar_list_page" class="menu list options_menu" style="display: none; top: 68px; left: 214px;">
<li id="bar_page_color">
<div class="ico fillcolor"></div>
背景颜色<div class="extend ex_arrow">►</div>
<div class="menu color_picker extend_menu" style="right: -179px; display: none;">
<div class="color_items"><div style="background-color:rgb(255,255,255);"></div><div style="background-color:rgb(229,229,229);"></div><div style="background-color:rgb(207,207,207);"></div><div style="background-color:rgb(184,184,184);"></div><div style="background-color:rgb(161,161,161);"></div><div style="background-color:rgb(138,138,138);"></div><div style="background-color:rgb(115,115,115);"></div><div style="background-color:rgb(92,92,92);"></div><div style="background-color:rgb(69,69,69);"></div><div style="background-color:rgb(50,50,50);"></div><div style="background-color:rgb(23,23,23);"></div><div style="background-color:rgb(0,0,0);"></div><div class="clear"></div></div>
<div class="color_items"><div style="background-color:rgb(255,204,204);"></div><div style="background-color:rgb(255,230,204);"></div><div style="background-color:rgb(255,255,204);"></div><div style="background-color:rgb(230,255,204);"></div><div style="background-color:rgb(204,255,204);"></div><div style="background-color:rgb(204,255,230);"></div><div style="background-color:rgb(204,255,255);"></div><div style="background-color:rgb(204,229,255);"></div><div style="background-color:rgb(204,204,255);"></div><div style="background-color:rgb(229,204,255);"></div><div style="background-color:rgb(255,204,255);"></div><div style="background-color:rgb(255,204,230);"></div><div style="background-color:rgb(255,153,153);"></div><div style="background-color:rgb(255,204,153);"></div><div style="background-color:rgb(255,255,153);"></div><div style="background-color:rgb(204,255,153);"></div><div style="background-color:rgb(153,255,153);"></div><div style="background-color:rgb(153,255,204);"></div><div style="background-color:rgb(153,255,255);"></div><div style="background-color:rgb(153,204,255);"></div><div style="background-color:rgb(153,153,255);"></div><div style="background-color:rgb(204,153,255);"></div><div style="background-color:rgb(255,153,255);"></div><div style="background-color:rgb(255,153,204);"></div><div style="background-color:rgb(255,102,102);"></div><div style="background-color:rgb(255,179,102);"></div><div style="background-color:rgb(255,255,102);"></div><div style="background-color:rgb(179,255,102);"></div><div style="background-color:rgb(102,255,102);"></div><div style="background-color:rgb(102,255,179);"></div><div style="background-color:rgb(102,255,255);"></div><div style="background-color:rgb(102,178,255);"></div><div style="background-color:rgb(102,102,255);"></div><div style="background-color:rgb(178,102,255);"></div><div style="background-color:rgb(255,102,255);"></div><div style="background-color:rgb(255,102,179);"></div><div style="background-color:rgb(255,51,51);"></div><div style="background-color:rgb(255,153,51);"></div><div style="background-color:rgb(255,255,51);"></div><div style="background-color:rgb(153,255,51);"></div><div style="background-color:rgb(51,255,51);"></div><div style="background-color:rgb(51,255,153);"></div><div style="background-color:rgb(51,255,255);"></div><div style="background-color:rgb(51,153,255);"></div><div style="background-color:rgb(51,51,255);"></div><div style="background-color:rgb(153,51,255);"></div><div style="background-color:rgb(255,51,255);"></div><div style="background-color:rgb(255,51,153);"></div><div style="background-color:rgb(255,0,0);"></div><div style="background-color:rgb(255,128,0);"></div><div style="background-color:rgb(255,255,0);"></div><div style="background-color:rgb(128,255,0);"></div><div style="background-color:rgb(0,255,0);"></div><div style="background-color:rgb(0,255,128);"></div><div style="background-color:rgb(0,255,255);"></div><div style="background-color:rgb(0,127,255);"></div><div style="background-color:rgb(0,0,255);"></div><div style="background-color:rgb(127,0,255);"></div><div style="background-color:rgb(255,0,255);"></div><div style="background-color:rgb(255,0,128);"></div><div style="background-color:rgb(204,0,0);"></div><div style="background-color:rgb(204,102,0);"></div><div style="background-color:rgb(204,204,0);"></div><div style="background-color:rgb(102,204,0);"></div><div style="background-color:rgb(0,204,0);"></div><div style="background-color:rgb(0,204,102);"></div><div style="background-color:rgb(0,204,204);"></div><div style="background-color:rgb(0,102,204);"></div><div style="background-color:rgb(0,0,204);"></div><div style="background-color:rgb(102,0,204);"></div><div style="background-color:rgb(204,0,204);"></div><div style="background-color:rgb(204,0,102);"></div><div style="background-color:rgb(153,0,0);"></div><div style="background-color:rgb(153,76,0);"></div><div style="background-color:rgb(153,153,0);"></div><div style="background-color:rgb(77,153,0);"></div><div style="background-color:rgb(0,153,0);"></div><div style="background-color:rgb(0,153,77);"></div><div style="background-color:rgb(0,153,153);"></div><div style="background-color:rgb(0,76,153);"></div><div style="background-color:rgb(0,0,153);"></div><div style="background-color:rgb(76,0,153);"></div><div style="background-color:rgb(153,0,153);"></div><div style="background-color:rgb(153,0,77);"></div><div style="background-color:rgb(102,0,0);"></div><div style="background-color:rgb(102,51,0);"></div><div style="background-color:rgb(102,102,0);"></div><div style="background-color:rgb(51,102,0);"></div><div style="background-color:rgb(0,102,0);"></div><div style="background-color:rgb(0,102,51);"></div><div style="background-color:rgb(0,102,102);"></div><div style="background-color:rgb(0,51,102);"></div><div style="background-color:rgb(0,0,102);"></div><div style="background-color:rgb(51,0,102);"></div><div style="background-color:rgb(102,0,102);"></div><div style="background-color:rgb(102,0,51);"></div><div style="background-color:rgb(51,0,0);"></div><div style="background-color:rgb(51,26,0);"></div><div style="background-color:rgb(51,51,0);"></div><div style="background-color:rgb(26,51,0);"></div><div style="background-color:rgb(0,51,0);"></div><div style="background-color:rgb(0,51,26);"></div><div style="background-color:rgb(0,51,51);"></div><div style="background-color:rgb(0,25,51);"></div><div style="background-color:rgb(0,0,51);"></div><div style="background-color:rgb(25,0,51);"></div><div style="background-color:rgb(51,0,51);"></div><div style="background-color:rgb(51,0,26);"></div><div class="clear"></div></div>
<div title="透明" class="ico transparent color_transparent"></div>
<div class="color_hex">#<input type="text"></div>
<div class="clear"></div>
</div></li>
<li>
页面大小<div class="extend ex_arrow">►</div>
<ul id="bar_list_pagesize" class="menu list extend_menu menu_ico">
<li ac="set_page_size" w="1500" h="2100">A3(1500x2100)</li>
<li ac="set_page_size" w="1050" h="1500">A4(1050x1500)</li>
<li ac="set_page_size" w="750" h="1050">A5(750x1050)</li>
<li class="devider"></li>
<li class="menu_text" id="page_size_custom">自定义</li>
<li class="menu_text" style="line-height: 30px;"><span class="lbl">W:</span><div id="page_size_w" class="spinner active" style="width: 75px;" min="200" max="20000" old="1050px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div></li>
<li class="menu_text" style="line-height: 30px;"><span class="lbl">H:</span><div id="page_size_h" class="spinner active" style="width: 75px;" min="200" max="20000" old="1000px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div></li>
</ul>
</li>
<li>
页面方向<div class="extend ex_arrow">►</div>
<ul id="bar_list_orientation" class="menu list extend_menu menu_ico">
<li ac="set_page_orientation" ori="portrait">竖向</li>
<li ac="set_page_orientation" ori="landscape">横向</li>
</ul>
</li>
<li>
<div class="ico padding"></div>
内边距<div class="extend ex_arrow">►</div>
<ul id="bar_list_padding" class="menu list extend_menu menu_ico">
<li ac="set_page_padding" p="0">0px</li>
<li ac="set_page_padding" p="20">20px</li>
<li ac="set_page_padding" p="40">40px</li>
<li ac="set_page_padding" p="60">60px</li>
<li ac="set_page_padding" p="80">80px</li>
<li ac="set_page_padding" p="100">100px</li>
</ul>
</li>
<li class="devider"></li>
<li ac="set_page_showgrid">显示网格</li>
<li>
<div class="ico gridsize"></div>
网格大小<div class="extend ex_arrow">►</div>
<ul id="bar_list_gridsize" class="menu list extend_menu menu_ico">
<li ac="set_page_gridsize" s="10">小</li>
<li ac="set_page_gridsize" s="15">正常</li>
<li ac="set_page_gridsize" s="20">大</li>
<li ac="set_page_gridsize" s="30">很大</li>
</ul>
</li>
</ul>
<ul id="bar_list_arrange" class="menu list options_menu" style="display: none; top: 68px; left: 260px;">
<li ac="front" class="disabled"><div class="ico ico_front"></div>置于顶层<div class="extend">Ctrl+]</div></li>
<li ac="back" class="disabled"><div class="ico ico_back"></div>置于底层<div class="extend">Ctrl+[</div></li>
<li ac="forward" class="disabled">上移一层<div class="extend">Ctrl+Shift+]</div></li>
<li ac="backward" class="disabled">下移一层<div class="extend">Ctrl+Shift+[</div></li>
<li class="devider"></li>
<li id="bar_arrange_align" class="disabled">
图形对齐<div class="extend ex_arrow">►</div>
<ul class="menu list extend_menu">
<li ac="align_shape" al="left">左对齐</li>
<li ac="align_shape" al="center">居中对齐</li>
<li ac="align_shape" al="right">右对齐</li>
<li class="devider"></li>
<li ac="align_shape" al="top">顶端对齐</li>
<li ac="align_shape" al="middle">垂直居中对齐</li>
<li ac="align_shape" al="bottom">底端对齐</li>
</ul>
</li>
<li id="bar_arrange_dist" class="disabled">
图形分布<div class="extend ex_arrow">►</div>
<ul class="menu list extend_menu">
<li ac="distribute_shape" dis="h">水平平均分布</li>
<li ac="distribute_shape" dis="v">垂直平均分布</li>
</ul>
</li>
<li id="bar_arrange_match" class="disabled">
匹配大小<div class="extend ex_arrow">►</div>
<ul class="menu list extend_menu">
<li ac="match_size" w="auto" h="">宽度</li>
<li ac="match_size" w="" h="auto">高度</li>
<li ac="match_size" w="auto" h="auto">宽度和高度</li>
<li ac="match_size" custom="true">自定义</li>
</ul>
</li>
<li class="devider"></li>
<li ac="lock" class="disabled"><div class="ico ico_lock"></div>锁定<div class="extend">Ctrl+L</div></li>
<li ac="unlock" class="disabled"><div class="ico ico_unlock"></div>解锁<div class="extend">Ctrl+Shift+L</div></li>
<li class="devider"></li>
<li ac="group" class="disabled">组合<div class="extend">Ctrl+G</div></li>
<li ac="ungroup" class="disabled">取消组合<div class="extend">Ctrl+Shift+G</div></li>
</ul>
<ul id="bar_list_help" class="menu list options_menu noico" style="display: none; top: 68px; left: 306px;">
<li ac="hotkey">快捷键列表</li>
<li ac="getting_started">开始向导</li>
<li ac="feedback">发送反馈</li>
</ul>
<ul id="font_list" class="menu list menu_ico" style="display: none;">
<li style="font-family: Arial">Arial</li>
<li style="font-family: Verdana">Verdana</li>
<li style="font-family: Georgia">Georgia</li>
<li style="font-family: Times New Roman">Times New Roman</li>
<li style="font-family: Courier New">Courier New</li>
<li style="font-family: Impact">Impact</li>
<li style="font-family: Comic Sans MS">Comic Sans MS</li>
<li style="font-family: Tahoma">Tahoma</li>
<li style="font-family: Garamond">Garamond</li>
<li style="font-family: Lucida Console">Lucida Console</li>
<li class="devider"></li>
<li style="font-family: 宋体">宋体</li>
<li style="font-family: 微软雅黑">微软雅黑</li>
<li style="font-family: 黑体">黑体</li>
<li style="font-family: 楷体">楷体</li>
</ul>
<ul id="font_size_list" class="menu list" style="display: none;">
<li>6</li><li>7</li><li>8</li><li>9</li><li>10</li><li>11</li><li>12</li><li>14</li><li>18</li><li>24</li><li>30</li><li>36</li><li>48</li><li>60</li><li>72</li>
</ul>
<ul id="font_align_list" class="menu list" style="display: none;">
<li cate="textAlign" al="left"><div class="ico alignleft"></div></li>
<li cate="textAlign" al="center"><div class="ico aligncenter"></div></li>
<li cate="textAlign" al="right"><div class="ico alignright"></div></li>
<li cate="vAlign" al="top"><div class="ico aligntop"></div></li>
<li cate="vAlign" al="middle"><div class="ico alignmiddle"></div></li>
<li cate="vAlign" al="bottom"><div class="ico alignbottom"></div></li>
</ul>
<ul id="line_width_list" class="menu list menu_ico" style="display: none;">
<li>0px</li>
<li>1px</li>
<li>2px</li>
<li>3px</li>
<li>4px</li>
<li>5px</li>
<li>6px</li>
<li>8px</li>
<li>10px</li>
</ul>
<ul id="line_style_list" class="menu list menu_ico" style="display: none;">
<li line="solid"><div class="ico linestyle linesolid"></div></li>
<li line="dashed"><div class="ico linestyle linedashed"></div></li>
<li line="dot"><div class="ico linestyle linedot"></div></li>
<li line="dashdot"><div class="ico linestyle linedashdot"></div></li>
</ul>
<ul id="line_type_list" class="menu list" style="display: none;">
<li tp="broken"><div class="ico linkertype_broken"></div></li>
<li tp="curve"><div class="ico linkertype_curve"></div></li>
<li tp="normal"><div class="ico linkertype_normal"></div></li>
</ul>
<ul id="beginarrow_list" class="menu list menu_ico" style="display: none;">
<li arrow="none"><div class="ico ico_arrow larrow_none"></div></li>
<li arrow="solidArrow"><div class="ico ico_arrow larrow_solidarrow"></div></li>
<li arrow="dashedArrow"><div class="ico ico_arrow larrow_dashedarrow"></div></li>
<li arrow="normal"><div class="ico ico_arrow larrow_normal"></div></li>
<li arrow="solidDiamond"><div class="ico ico_arrow larrow_soliddiamond"></div></li>
<li arrow="dashedDiamond"><div class="ico ico_arrow larrow_dasheddiamond"></div></li>
<li arrow="solidCircle"><div class="ico ico_arrow larrow_solidcircle"></div></li>
<li arrow="dashedCircle"><div class="ico ico_arrow larrow_dashedcircle"></div></li>
<li arrow="cross"><div class="ico ico_arrow larrow_cross"></div></li>
<li arrow="asynch1"><div class="ico ico_arrow larrow_asynch1"></div></li>
<li arrow="asynch2"><div class="ico ico_arrow larrow_asynch2"></div></li>
</ul>
<ul id="endarrow_list" class="menu list menu_ico" style="display: none;">
<li arrow="none"><div class="ico ico_arrow rarrow_none"></div></li>
<li arrow="solidArrow"><div class="ico ico_arrow rarrow_solidarrow"></div></li>
<li arrow="dashedArrow"><div class="ico ico_arrow rarrow_dashedarrow"></div></li>
<li arrow="normal"><div class="ico ico_arrow rarrow_normal"></div></li>
<li arrow="solidDiamond"><div class="ico ico_arrow rarrow_soliddiamond"></div></li>
<li arrow="dashedDiamond"><div class="ico ico_arrow rarrow_dasheddiamond"></div></li>
<li arrow="solidCircle"><div class="ico ico_arrow rarrow_solidcircle"></div></li>
<li arrow="dashedCircle"><div class="ico ico_arrow rarrow_dashedcircle"></div></li>
<li arrow="cross"><div class="ico ico_arrow rarrow_cross"></div></li>
<li arrow="asynch1"><div class="ico ico_arrow rarrow_asynch1"></div></li>
<li arrow="asynch2"><div class="ico ico_arrow rarrow_asynch2"></div></li>
</ul>
<div id="hotkey_list" class="dialog">
<div class="dialog_header">快捷键列表</div>
<div class="dialog_content">
<div class="hotkey_content">
<span class="hotkey_line hotkey_group">通用 </span>
<span class="hotkey_line">
<span class="hotkey">Space</span><span class="hotkey_desc">按住Space，通过鼠标可以对页面进行拖动 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl</span><span class="hotkey_desc">按住Ctrl，点击一个图形，将其添加到选择图形中，或者从中移除 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Alt + (+) , Alt + (-)</span><span class="hotkey_desc">放大，缩小 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + A</span><span class="hotkey_desc">全部选中 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Esc</span><span class="hotkey_desc">取消选中，并取消当先操作 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">T</span><span class="hotkey_desc">插入文本 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">I</span><span class="hotkey_desc">插入图片 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">L</span><span class="hotkey_desc">插入连线 </span>
</span>
<span class="hotkey_line null_line">&nbsp;</span>
<span class="hotkey_line hotkey_group">图形被选中时 </span>
<span class="hotkey_line">
<span class="hotkey">箭头 (←↑↓→) </span><span class="hotkey_desc">将选中图形向左、向上、向下、向右移动 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Shift + 箭头 (←↑↓→) </span><span class="hotkey_desc">每次微移一个像素 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">调整图形大小时按住Ctrl </span><span class="hotkey_desc">调整图形大小，并且约束比例 </span>
</span>
<span class="hotkey_line">&nbsp;</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Z</span><span class="hotkey_desc">撤销 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Y</span><span class="hotkey_desc">恢复 </span>
</span>
<span class="hotkey_line">&nbsp;</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + X</span><span class="hotkey_desc">剪切 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + C</span><span class="hotkey_desc">复制 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + V</span><span class="hotkey_desc">粘贴 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + D</span><span class="hotkey_desc">复用 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Shift + B</span><span class="hotkey_desc">格式刷 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Delete, Backspace</span><span class="hotkey_desc">删除 </span>
</span>
<span class="hotkey_line">&nbsp;</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + ]</span><span class="hotkey_desc">将选中的图形置于顶层 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + [</span><span class="hotkey_desc">将选中的图形置于底层 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Shift + ]</span><span class="hotkey_desc">将选中的图形上移一层 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Shift + [</span><span class="hotkey_desc">将选中的图形下移一层 </span>
</span>
<span class="hotkey_line">&nbsp;</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + L</span><span class="hotkey_desc">锁定选中的图形 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Shift + L</span><span class="hotkey_desc">将选中的图形解锁 </span>
</span>
<span class="hotkey_line">&nbsp;</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + G</span><span class="hotkey_desc">组合选中的图形 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Shift + G</span><span class="hotkey_desc">将选中的图形取消组合 </span>
</span>
<span class="hotkey_line null_line">&nbsp;</span>
<span class="hotkey_line hotkey_group">编辑文本 </span>
<span class="hotkey_line">
<span class="hotkey">空格 </span><span class="hotkey_desc">编辑文本 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + B</span><span class="hotkey_desc">粗体 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + I</span><span class="hotkey_desc">斜体 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + U</span><span class="hotkey_desc">下划线 </span>
</span>
<span class="hotkey_line">
<span class="hotkey">Ctrl + Enter</span><span class="hotkey_desc">保存文本编辑 </span>
</span>
</div>
</div>
<div class="designer_button normal hotkey_ok" onclick="$(&#39;#hotkey_list&#39;).dlg(&#39;close&#39;)">确定 </div>
</div>
<div id="send_feedback" class="dialog">
<div class="dialog_header">发送反馈</div>
<div class="dialog_content" style="padding: 20px 40px">
<p style="margin-top: 0px;">
您可以把使用中遇到的问题、功能的建议、评论等发送给我们。<br>我们迫切希望得到您有价值的反馈，有您的反馈，我们会做的更好！<br><br>请写下您的邮箱和反馈描述：
</p>
<span class="feedback_lebal" style="height: 33px;line-height: 33px;">
<span>邮箱：</span>
<span class="feedback_error_email_format">邮箱不正确，请填写一个您常用的邮箱</span>
</span>
<input id="feedback_email" type="text" value="apple1993228@163.com" class="txt" style="width:490px;height:24px;">
<span class="feedback_lebal" style="height: 33px;line-height: 33px;">
<span>姓名：</span>
</span>
<input id="feedback_name" type="text" value="浮生醉" class="txt" style="width:490px;height:24px;">
<span class="feedback_lebal" style="height: 33px;line-height: 33px;">
<span>反馈：</span>
<span class="feedback_error_msg">请填写您的反馈信息</span>
</span>
<textarea id="feedback_message" class="txt" style="width:490px;height:93px;"></textarea>
</div>
<div class="dialog_buttons" style="padding: 0px 40px 20px;position:relative;">
<span class="send_btn designer_button" onclick="UI.sendFeedBack(this)">发送</span>
<div style="text-align:left;">您可以直接加我们的qq群进行反馈 (方便、快捷)：<a style="position:absolute;" target="_blank" href="https://shang.qq.com/wpa/qunwpa?idkey=8d849a69e70f475c5a648db74016a1f01c3077d6766ebd0cdbc8d3071ff863f3"><img border="0" src="./dispatcherServlet委派模式_files/group.png" alt="ProcessOn 6群" title="ProcessOn"></a></div>
</div>
</div>
<div id="link_dialog" class="dialog" style="min-width: 500px;">
<div class="dialog_header">插入链接</div>
<div class="dialog_content" style="padding: 30px 20px; text-align: center;">
<b>链接到：</b><input placeholder="processon.com" id="linkto_addr" type="text" class="input_text" style="width: 350px;">
</div>
<div class="dialog_buttons">
<div class="designer_button" onclick="UI.setLink()">确定</div>&nbsp;
<div class="designer_button normal" onclick="$(&#39;#link_dialog&#39;).dlg(&#39;close&#39;);">取消</div>
</div>
</div>
<div id="saveas_dialog" class="dialog" style="min-width: 450px;">
<div class="dialog_header">克隆此文件</div>
<div class="dialog_content" style="padding: 30px 20px; text-align: center;">
<form id="saveas_form" action="https://www.processon.com/diagraming/saveas" method="post">
<input id="hid_saveas_id" type="hidden" name="id">
<b>标题：</b><input name="title" id="saveas_title" type="text" class="input_text" style="width: 300px;" onkeydown="if(event.keyCode == 13) return false;">
</form>
</div>
<div class="dialog_buttons">
<div class="designer_button" onclick="UI.doSaveAs()" id="btn_dosaveas">确定</div>&nbsp;
<div class="designer_button normal" onclick="$(&#39;#saveas_dialog&#39;).dlg(&#39;close&#39;);">取消</div>
</div>
</div>
<div id="export_dialog" class="dialog" style="min-width: 450px;">
<div class="dialog_header">下载格式</div>
<div class="dialog_content">
<form id="export_form" action="https://assets.processon.com/diagram_export/flow" method="post">
<ul class="export-list">
<li class="first">
<input id="export_png" type="radio" name="type" value="image" checked="checked" style="float: left;margin-right: 5px;">
<label for="export_png" class="export-menu" style="float:left;line-height: 18px;">
图片文件<span class="suffix"> (*.png)</span>
<span class="export_des">将文件导出为图片</span>
</label>
<div style="clear: both;"></div>
</li>
<li class="first">
<input id="export_png_hd" type="radio" name="type" value="png" style="float: left;margin-right: 5px;">
<label for="export_png_hd" class="export-menu" style="float:left;line-height: 18px;">
高清图片文件<span class="suffix"> (*.png)</span>
<span class="export_des">将文件导出为图片</span>
<label style="color:#f60">（会员功能限免）</label>
</label>
<div style="clear: both;"></div>
</li>
<li class="first">
<input id="export_jpg" type="radio" name="type" value="jpg" style="float: left;margin-right: 5px;">
<label for="export_jpg" class="export-menu" style="float:left;line-height: 18px;">
JPG文件<span class="suffix"> (*.jpg)</span>
<span class="export_des">导出为JPG图片格式 (默认白色背景)</span>
</label>
<div style="clear: both;"></div>
</li>
<li class="first">
<input id="export_pdf" type="radio" name="type" value="pdf" style="float: left;margin-right: 5px;">
<label for="export_pdf" class="export-menu" style="float:left;line-height: 18px;">
PDF文件<span class="suffix"> (*.pdf)</span>
<span class="export_des">由图片保存成的PDF文件</span>
</label>
<div style="clear: both;"></div>
</li>
<li class="first">
<input id="export_pdfHD" type="radio" name="type" value="pdfHD" style="float: left;margin-right: 5px;">
<label for="export_pdfHD" class="export-menu" style="float:left;line-height: 18px;">
PDF文件<span class="suffix"> (*.pdf)</span>
<span class="export_des">导出高清PDF文件（仅支持部分字体样式）<span style="color:#f60;"></span></span>
</label>
<div style="clear: both;"></div>
</li>
<li class="first">
<input id="export_pos" type="radio" name="type" value="pos" style="float: left;margin-right: 5px;">
<label for="export_pos" class="export-menu" style="float:left;line-height: 18px;">
POS文件<span class="suffix"> (*.pos)</span>
<span class="export_des">包含图片与图形结构定义（可导入）</span>
</label>
<div style="clear: both;"></div>
</li>
<li class="first">
<input id="export_svg" type="radio" name="type" value="svg" style="float: left;margin-right: 5px;">
<label for="export_svg" class="export-menu" style="float:left;line-height: 18px;">
SVG文件<span class="suffix"> (*.svg)</span>
<span class="export_des">导出为SVG矢量图形<span style="color:#f60;"></span></span>
</label>
<div style="clear: both;"></div>
</li>
</ul>
<input id="export_definition" type="hidden" name="definition">
<input id="export_title" type="hidden" name="title">
<input id="export_width" type="hidden" name="width">
<input id="export_height" type="hidden" name="height">
<input type="hidden" name="chartId" value="5d8ec252e4b05a8b754209ba">
<input type="hidden" name="ignore" value="definition">
</form>
</div>
<div class="dialog_buttons">
<div class="designer_button" id="export_ok" onclick="UI.doExport()">确定</div>&nbsp;
<div class="designer_button normal" onclick="$(&#39;#export_dialog&#39;).dlg(&#39;close&#39;);">取消</div>
</div>
</div>
<div id="svg_dialog" style="width:100%;height:100%;position:fixed;top:0;left:0;visibility:hidden;"></div>
<div class="menu mark_content mark1_content">
<div class="dialog_header">开始</div>
<div class="ico dlg_close" onclick="UI.closeGettingStart()"></div>
<div class="_content">把您想使用的图形拖到右侧画布上，创建图形就是如此简单。</div>
<div class="arr-icon left"><div class="arr-border"></div><div class="inner-arr"></div></div>
<div class="mark_next"><span class="designer_button normal" onclick="UI.showStartStep(2)">下一步</span></div>
</div>
<div class="menu mark_content mark2_content">
<div class="dialog_header">菜单栏</div>
<div class="ico dlg_close" onclick="UI.closeGettingStart()"></div>
<div class="_content">通过这些菜单，您可以调整和设置图形的属性、样式，也可以管理您的文件。</div>
<div class="arr-icon top"><div class="arr-border"></div><div class="inner-arr"></div></div>
<div class="mark_next"><span class="designer_button normal" onclick="UI.showStartStep(3)">下一步</span></div>
</div>
<div class="menu mark_content mark3_content">
<div class="dialog_header">属性工具栏</div>
<div class="ico dlg_close" onclick="UI.closeGettingStart()"></div>
<div class="_content">对选中的文本、图形、连线进行个性化设置，让他们看起来更漂亮。</div>
<div class="arr-icon top"><div class="arr-border"></div><div class="inner-arr"></div></div>
<div class="mark_next"><span class="designer_button normal" onclick="UI.showStartStep(4)">下一步</span></div>
</div>
<div class="menu mark_content mark4_content">
<div class="dialog_header">属性面板</div>
<div class="ico dlg_close" onclick="UI.closeGettingStart()"></div>
<div class="_content">这些面板让您的绘制过程更方便、简单，使用之后，您一定会喜欢。</div>
<div class="arr-icon right"><div class="arr-border"></div><div class="inner-arr"></div></div>
<div class="mark_next"><span class="designer_button normal" onclick="UI.closeGettingStart()">关闭</span></div>
</div>
<div class="menu mark_content markcreated_content">
<div class="dialog_header">编辑图形</div>
<div class="ico dlg_close" onclick="UI.closeGettingStart()"></div>
<div class="_content">
<p>在图形边缘的任何地方点击并拖动，您可以创建出一条漂亮的连线。（小圆点是推荐的连接点）</p><p>通过小的矩形控制点，您可以改变图形大小。（按住CTRL键可约束比例）</p><p>通过顶部的圆形控制点，对图形进行旋转。</p><p>双击可以编辑文本。（CTRL+ENTER保存文本）</p>
</div>
<div class="arr-icon left"><div class="arr-border"></div><div class="inner-arr"></div></div>
<div class="mark_next"><span class="designer_button normal" onclick="UI.closeGettingStart()">关闭</span></div>
</div>
<ul id="dock_fill_list" class="menu list menu_ico" style="display: none; width: 198px;">
<li ty="none">无</li>
<li ty="solid">颜色</li>
<li ty="gradient">渐变</li>
<li ty="image">图片</li>
</ul>
<ul id="gradient_type_list" class="menu list menu_ico" style="display: none; z-index: 1;">
<li ty="linear" style="width: 60px">线性渐变</li>
<li ty="radial" style="width: 60px">径向渐变</li>
</ul>
<ul id="img_display_list" class="menu list" style="display: none;">
<li ty="fill">填充</li>
<li ty="fit">自适应</li>
<li ty="stretch">按图形伸展</li>
<li ty="original">原始尺寸</li>
<li ty="tile">平铺</li>
</ul>
<ul id="page_size_list" class="menu list dock_page_menu menu_ico" style="display: none;">
<li ac="set_page_size" w="1500" h="2100">A3(1500x2100)</li>
<li ac="set_page_size" w="1050" h="1500">A4(1050x1500)</li>
<li ac="set_page_size" w="750" h="1050">A5(750x1050)</li>
<li class="devider"></li>
<li class="menu_text" id="dock_size_custom">自定义</li>
<li class="menu_text" style="line-height: 30px;"><span class="lbl">W:</span><div id="dock_size_w" class="spinner active" style="width: 75px;" min="200" max="20000" old="200px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div></li>
<li class="menu_text" style="line-height: 30px;"><span class="lbl">H:</span><div id="dock_size_h" class="spinner active" style="width: 75px;" min="200" max="20000" old="200px"><div class="spinner_input"><input></div><div class="buttons"><div class="spinner_up"></div><div class="spinner_down"></div></div></div></li>
</ul>
<ul id="page_padding_list" class="menu list dock_page_menu menu_ico" style="display: none;">
<li p="0">0px</li>
<li p="20">20px</li>
<li p="40">40px</li>
<li p="60">60px</li>
<li p="80">80px</li>
<li p="100">100px</li>
</ul>
<ul id="page_gridsize_list" class="menu list dock_page_menu menu_ico" style="display: none;">
<li s="10">小</li>
<li s="15">正常</li>
<li s="20">大</li>
<li s="30">很大</li>
</ul>
<ul id="attr_display_list" class="menu list dock_page_menu menu_ico" style="display: none;">
<li ty="none">无</li>
<li ty="text">文本</li>
<li ty="icon">图标</li>
</ul>
<ul id="attr_icon_list" class="menu list dock_page_menu" style="display: none;">
<li></li>
</ul>
<ul id="attr_location_h_list" class="menu list attr_location_menu dock_page_menu" style="display: none;">
<li loc="mostleft"><div><span style="left: -5px"></span></div>最左边</li>
<li loc="leftedge"><div><span style="left: -3px"></span></div>左边缘</li>
<li loc="left"><div><span style="left: 0px"></span></div>左边</li>
<li loc="center"><div><span style="left: 3px"></span></div>中间</li>
<li loc="right"><div><span style="left: 6px"></span></div>右边</li>
<li loc="rightedge"><div><span style="left: 9px"></span></div>右边缘</li>
<li loc="mostright"><div><span style="left: 11px"></span></div>最右边</li>
</ul>
<ul id="attr_location_v_list" class="menu list attr_location_menu dock_page_menu" style="display: none;">
<li loc="mosttop"><div><span style="top: -5px"></span></div>最上边</li>
<li loc="topedge"><div><span style="top: -3px"></span></div>上边缘</li>
<li loc="top"><div><span style="top: 0px"></span></div>顶部</li>
<li loc="middle"><div><span style="top: 3px"></span></div>中间</li>
<li loc="bottom"><div><span style="top: 6px"></span></div>底部</li>
<li loc="bottomedge"><div><span style="top: 9px"></span></div>下边缘</li>
<li loc="mostbottom"><div><span style="top: 11px"></span></div>最下边</li>
</ul>
<div id="colla_dialog" class="dialog">
<div class="dialog_header">分享与协作 </div>
<div class="dialog_content" style="padding: 20px 20px 0px 20px;width: 494px;">
<div style="padding: 4px 0px;"><strong>权限列表： </strong></div>
<div class="role_list"></div>
<div class="new_invitation_container" style="margin-bottom: 10px;">
<div style="padding: 4px 0px;">
<strong>新邀请： </strong>
<span id="add_prompt1" style="margin-left: 100px;"><span class="badge">1</span>输入受邀请人姓名或者邮箱。</span>
<span id="add_prompt2" style="margin-left: 100px;"><span class="badge">2</span>从以下用户列表中选择一个用户发起邀请。</span>
<span id="add_prompt3" class="_fail alert" style="margin-left: 150px;">已经被邀请！</span>
<span id="add_prompt4" class="alert success" style="margin-left: 150px;">发送成功。</span>
</div>
<div class="add_new_invit" style="margin-bottom: 15px;">
<input id="input_add_colla" type="text" class="txt" placeholder="输入受邀请人姓名或者邮箱。">
<input id="add_userid" type="hidden" value="">
<input id="add_type" type="hidden" value="">
<div class="select_add_role">
<select id="invit_role">
<option value="editor" selected="selected">编辑者</option>
<option value="viewer">浏览者</option>
</select>
<div style="clear:both;"></div>
</div>
<div class="suggest_bot_tip">
<span class="left">
<strong>常用联系人</strong>
：
</span>
<span class="right">
<strong>我的小组成员</strong>
：
</span>
</div>
<div id="colla_suggest_box"></div>
</div>
<div class="add_new_button" style="text-align:right;">
<span class="designer_button normal" onclick="UI.doAddCollaboration()">发送邀请 </span>
</div>
</div>
</div>
</div>
<div id="colla_add" style="width:500px;z-index:3;" class="dialog" title="添加协作成员">
<div style="margin-top: 20px">
<div class="colla-tabs">
<a tit="colla_users" class="colla-tab active">最近联系人</a>
<a tit="colla_teams" class="colla-tab">小组成员</a>
<a tit="colla_following" class="colla-tab">我的关注</a>
<a tit="colla_follower" class="colla-tab">我的粉丝</a>
</div>
<div class="colla-context-con">
<div id="colla_users" class="colla-tab-content"></div>
<div id="colla_teams" class="colla-tab-content"></div>
<div id="colla_following" data-type="following" class="colla-tab-content"></div>
<div id="colla_follower" data-type="follower" class="colla-tab-content"></div>
</div>
</div>
<div style="margin-top: 20px">
<div style="margin-bottom: 20px">
<div style="color:#666;">新邀请</div>
</div>
<div class="multi-input" id="multi-input-colla"></div>
<div style="margin-bottom: 10px;margin-top:12px;">
<select id="role" class="txt" style="height: 25px;padding: 0px;margin-top: -3px;width:80px;">
<option value="editor" selected="selected">编辑者</option>
<option value="viewer">浏览者</option>
</select>
<div style="float:right;cursor: pointer;">
<span id="send-colla-invite" class="pro-btn default okbtn" style="margin-top:-2px;">发送邀请</span>
<span id="send-colla-invite-loading" class="pro-btn default okbtn" style="margin-top:-5px;display: none;cursor: wait;">发送中...</span>
</div>
</div>
<div id="send-colla-invite-success" class="alert success" style="text-align: center;display: none">邀请已发送，请耐心等待受邀人接受您的邀请。</div>
<div id="send-colla-invite-danger" class="alert danger" style="text-align: center;display: none">邀请发送失败。</div>
</div>
<div style="margin-top: 20px">
<div style="color:#666;">权限列表</div>
<div id="role_list">
</div>
</div>
</div>
<div id="pubpo_win" title="发布和公开到ProcessOn" class="dialog-win dialog" style="width:566px;z-index:3;">
<div class="pubpo-content"></div>
</div>
<div id="share_win" title="分享" class="dialog-win dialog" style="width:700px;z-index:3;">
<div class="dialog-win-left">
<ul>
<li tit="viewlink" class="active"><a>生成浏览链接</a></li>
<li tit="emb"><a>嵌入到其他站点</a></li>
<li tit="image"><a>生成在线图片</a></li>
</ul>
</div>
<div class="dialog-win-right"></div>
</div>
<div id="confirm_dlg">
<div class="confirm_header">提示： </div>
<div class="confirm_content">
<p>请从列表中选择一个用户</p>
<div class="designer_button" onclick="$(&#39;#confirm_dlg&#39;).hide();">确定 </div>
<div style="clear: both;"></div>
</div>
</div>
<div id="image_dialog" class="dialog">
<div class="dialog_header">选择图片</div>
<div class="dialog_content" style="padding: 0px;">
<ul class="image_sources">
<li ty="upload" class="active">我的图片</li>
<li ty="url">网络图片</li>
<li ty="search">搜索图片</li>
</ul>
<div class="image_content">
<div id="image_select_upload" class="image_list">
<form id="frm_upload_image" action="https://www.processon.com/user_image/upload" method="post" enctype="multipart/form-data">
<div id="btn_img_upload" class="toolbar_button active">
<div class="ico"></div>上传图片
<input id="input_upload_image" name="image" type="file">
</div>
<span id="upload_img_res"></span>
<div style="clear: both;"></div>
</form>
<div id="user_image_items" class="image_items"></div>
</div>
<div id="image_select_url" class="image_list" style="display: none">
粘贴一个图片地址：<input id="input_img_url" type="text" class="input_text" style="width: 380px;">
<div id="img_url_area"></div>
</div>
<div id="image_select_search" class="image_list" style="display: none">
<input id="input_img_search" type="text" class="input_text" style="width: 380px;">
<div id="btn_img_search" class="toolbar_button active" style="display: inline-block;width: 70px;">搜索</div>
<div style="padding: 15px 0px 0px;">在上面输入搜索关键字，建议使用英文单词搜索。</div>
<div id="google_image_items" class="image_items"></div>
</div>
<div class="image_btns">
<div id="set_image_submit" class="designer_button">确定</div>
<div id="set_image_cancel" class="designer_button normal">取消</div>
<span id="set_image_text"></span>
</div>
</div>
<div style="clear: both;"></div>
</div>
</div>
<div id="chattingbox">
<div class="dock_view_header">
聊天
<span class="chatting_icon chatting_close" onclick="CLB.closeChatWin()"></span>
</div>
<div id="chatting_content">
<ul id="chat_messages"></ul>
<div class="dock_devider" style="margin-top: 0px;"></div>
<div class="chatting_bottom">
<textarea id="chatting_edit" class="txt" style="width: 228px;"></textarea>
<input type="button" class="designer_button" value="发送" onclick="CLB.sendChatMsg()">
</div>
</div>
</div>
<div id="disconnected" class="dialog">
<div class="dialog_content" style="padding: 40px;">
您已经和服务器断开连接，请刷新重试。
</div>
<div class="dialog_buttons">
<a class="designer_button" href="https://www.processon.com/diagraming/5d8ec252e4b05a8b754209ba">重试</a>&nbsp;
<a class="designer_button normal" href="https://www.processon.com/diagraming/back?id=5d8ec252e4b05a8b754209ba">关闭</a>
</div>
</div>
<div id="shapes_dialog" class="dialog" style="width: 400px;">
<div class="dialog_header">图形管理</div>
<div class="dialog_content" style="padding: 0px; max-height: 372px; overflow: auto;">
<ul id="shape_manage_list">
<li><div><input type="checkbox" value="basic">基础图形</div></li>
<li><div><input type="checkbox" value="flow">Flowchart 流程图</div></li>
<li><div><input type="checkbox" value="bpmn">BPMN</div></li>
<li><div><input type="checkbox" value="evc">EVC 企业价值链</div></li>
<li><div><input type="checkbox" value="epc">EPC 事件过程链</div></li>
<li><div><input type="checkbox" value="lane">泳池/泳道</div></li>
<li><div><input type="checkbox" value="er">实体关系图</div></li>
<li><div><input type="checkbox" class="cate_parent" value="uml_common,uml_usecase,uml_sequence,uml_class,uml_stateactivity,uml_deployment,uml_component">UML图</div></li>
<li class="child"><div><input type="checkbox" value="uml_common">UML 通用</div></li>
<li class="child"><div><input type="checkbox" value="uml_usecase">UML 用例图</div></li>
<li class="child"><div><input type="checkbox" value="uml_sequence">UML 时序图</div></li>
<li class="child"><div><input type="checkbox" value="uml_class">UML 类图</div></li>
<li class="child"><div><input type="checkbox" value="uml_stateactivity">UML 状态图/活动图</div></li>
<li class="child"><div><input type="checkbox" value="uml_deployment">UML 部署图</div></li>
<li class="child"><div><input type="checkbox" value="uml_component">UML 组件图</div></li>
<li><div><input type="checkbox" class="cate_parent" value="ui,ui_input">UI 界面原型图</div></li>
<li class="child"><div><input type="checkbox" value="ui">UI 界面元素</div></li>
<li class="child"><div><input type="checkbox" value="ui_input">UI 输入控件</div></li>
<li><div><input type="checkbox" class="cate_parent" value="ios_devices,ios_elements,ios_controls,ios_icons">iOS 界面原型图</div></li>
<li class="child"><div><input type="checkbox" value="ios_devices">iOS 设备</div></li>
<li class="child"><div><input type="checkbox" value="ios_elements">iOS 元素</div></li>
<li class="child"><div><input type="checkbox" value="ios_controls">iOS 控件</div></li>
<li class="child"><div><input type="checkbox" value="ios_icons">iOS 图标</div></li>
<li><div><input type="checkbox" class="cate_parent" value="andriod_devices,andriod_elements,andriod_controls,andriod_icons">Android界面原型图</div></li>
<li class="child"><div><input type="checkbox" value="andriod_devices">Android设备</div></li>
<li class="child"><div><input type="checkbox" value="andriod_elements">Android控件</div></li>
<li class="child"><div><input type="checkbox" value="andriod_controls">Android 表单</div></li>
<li class="child"><div><input type="checkbox" value="andriod_icons">Android图标</div></li>
<li><div><input type="checkbox" value="org">ORG 组织结构图</div></li>
<li><div><input type="checkbox" value="venn">维恩图</div></li>
<li><div><input type="checkbox" value="weizhu_bm">魏朱商业模式</div></li>
<li><div><input type="checkbox" class="cate_parent" value="network,network_aliyun,network_aws2019,network_aws,network_cisco,network_azure">网络拓扑图</div></li>
<li class="child"><div><input type="checkbox" value="network">Network</div></li>
<li class="child"><div><input type="checkbox" value="network_aliyun">阿里云</div></li>
<li class="child"><div><input type="checkbox" value="network_aws">AWS</div></li>
<li class="child"><div><input type="checkbox" value="network_cisco">Cisco</div></li>
<li class="child"><div><input type="checkbox" value="network_azure">Azure</div></li>
</ul>
</div>
<div class="dialog_buttons" style="padding: 20px;">
<span class="designer_button" onclick="UI.saveShapesManage()">确定</span>&nbsp;
<span class="designer_button normal" onclick="$(&#39;#shapes_dialog&#39;).dlg(&#39;close&#39;)">取消</span>
</div>
</div>
<ul id="user_menu" class="menu list" style="z-index: 1; display: none;width:160px;">
<li style="padding:4px 16px;">
<div class="user" onmousedown="UI.showUserMenu(event)" style="display:flex;">
<img src="./dispatcherServlet委派模式_files/5cfdc3b7e4b0591fc0dad152.png">&nbsp;
<a style="font-size:14px;color:#222;" href="https://www.processon.com/u/profile" target="_blank">浮生醉</a>
</div>
</li>
<li class="devider"></li>
<li><a style="font-size:14px;color:#222;display:block;" href="https://www.processon.com/upgrade" target="_blank">升级</a></li>
<li ac="dia">我的文件</li>
<li class="devider"></li>
<li ac="out">退出</li>
</ul>
<div id="themes" class="menu" style="display: none;"></div>
<div id="svg_exporter" style="display:none;position:fixed;z-index:-10;"></div>
</div>
<div>
<input id="signup_ticket" type="hidden">
<input id="randstr" type="hidden">
<span style="display:none" id="TencentCaptcha" data-appid="2046103261" data-cbfn="callback_public" class="pro-btn default pub-btn">点击验证</span>
</div>
<script src="./dispatcherServlet委派模式_files/svgUtil-f65266fa.js" charset="UTF-8" type="text/javascript"></script>
<script src="./dispatcherServlet委派模式_files/TCaptcha.js"></script>
<script type="text/javascript" charset="UTF-8" src="./dispatcherServlet委派模式_files/designer.2svg.js"></script>
<script type="text/javascript">
window.zhuge = window.zhuge || [];window.zhuge.methods = "_init debug identify track trackLink trackForm page".split(" ");
window.zhuge.factory = function(b) {return function() {var a = Array.prototype.slice.call(arguments);a.unshift(b);
window.zhuge.push(a);return window.zhuge;}};for (var i = 0; i < window.zhuge.methods.length; i++) {
var key = window.zhuge.methods[i];window.zhuge[key] = window.zhuge.factory(key);}window.zhuge.load = function(b, x) {
if (!document.getElementById("zhuge-js")) {var a = document.createElement("script");var verDate = new Date();
var verStr = verDate.getFullYear().toString()+ verDate.getMonth().toString() + verDate.getDate().toString();
a.type = "text/javascript";a.id = "zhuge-js";a.async = !0;a.src = (location.protocol == 'http:' ? "http://sdk.zhugeio.com/zhuge.min.js?v=" : 'https://zgsdk.zhugeio.com/zhuge.min.js?v=') + verStr;
a.onerror = function(){window.zhuge.identify = window.zhuge.track = function(ename, props, callback){if(callback && Object.prototype.toString.call(callback) === '[object Function]')callback();};};
var c = document.getElementsByTagName("script")[0];c.parentNode.insertBefore(a, c);window.zhuge._init(b, x)}};
window.zhuge.load('3f37ba50e54f4374b9af5be6d12b208f');//éç½®åºç¨çAppKey
</script>
<script type="text/javascript">
(function(){var po_user_id = getCookie();if(po_user_id == ''){removeLoginTag();return};var userLoginTag = localStorage.getItem('userLoginTag_'+ po_user_id);if(userLoginTag){return}zhuge.identify(po_user_id, {});localStorage.setItem('userLoginTag_'+ po_user_id, 'login');function getCookie(){var name = "processon_userKey=";
var ca = document.cookie.split(';');for(var i=0, len = ca.length; i < len; i++){var c = ca[i].trim();if (c.indexOf(name) == 0){return c.substring(name.length,c.length);};}return "";}
function removeLoginTag(){for(var key in localStorage){if(key.indexOf('userLoginTag') > -1){localStorage.removeItem(key)}}}})();
</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-28802488-1', 'auto');
ga('send', 'pageview');
</script>


<svg id="SvgjsSvg1001" width="2" height="0" xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" focusable="false" style="overflow: hidden; top: -100%; left: -100%; position: absolute; opacity: 0;"><defs id="SvgjsDefs1002"></defs><polyline id="SvgjsPolyline1003" points="0,0"></polyline><path id="SvgjsPath1004" d="M0 0 "></path></svg><iframe src="./dispatcherServlet委派模式_files/captcha-pre-verify.html" style="width: 0px; height: 0px; display: none;"></iframe><div id="hover_tip" style="left: 176px; top: 102px; display: none;"><div class="tip_arrow" style=""></div><div class="tip_content radius3">字体</div></div></body></html>